﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SqlDataAccess;

namespace QuanLyBanHang.Helper
{
	public class SoDu
	{
		public static void CapNhatSoDu(
			decimal ip_dc_id_san_pham
			, DateTime ip_dat_tu_ngay
			, DateTime ip_dat_den_ngay
			, decimal ip_dc_so_luong)
		{
			BKIQuanLyBanHangEntities db = new BKIQuanLyBanHangEntities();
			var v_lst_so_du = db.GD_SO_DU
				.Where(x => x.ID_SAN_PHAM == ip_dc_id_san_pham
						&& x.NGAY_THANG >= ip_dat_den_ngay
						&& x.NGAY_THANG <= ip_dat_den_ngay)
				.ToList();

			//Cập nhật số dư nếu đã có
			if (v_lst_so_du.Count > 0)
			{
				for (int i = 0; i < v_lst_so_du.Count; i++)
				{
					v_lst_so_du[i].SO_LUONG += (int)ip_dc_so_luong;
					if (v_lst_so_du[i].SO_LUONG <= 0)
					{
						db.GD_SO_DU.Remove(v_lst_so_du[i]);
					}
					db.SaveChanges();
				}
			}
			else
			{
				//Nếu chưa có số dư thì thêm mới dữ liệu số dư
				GD_SO_DU v_gd_so_du = new GD_SO_DU();
				v_gd_so_du.ID_SAN_PHAM = ip_dc_id_san_pham;
				v_gd_so_du.NGAY_THANG = ip_dat_den_ngay;
				v_gd_so_du.SO_LUONG = (int)ip_dc_so_luong;
				db.GD_SO_DU.Add(v_gd_so_du);
				db.SaveChanges();

			}
            db.Dispose();

		}

	}

}
